/**
 * 给你一个由 正 整数组成的数组 nums 。
 *
 * 如果nums 的子数组中位于 不同 位置的每对元素按位 与（AND）运算的结果等于 0 ，则称该子数组为 优雅 子数组。
 *
 * 返回 最长 的优雅子数组的长度。
 *
 * 子数组 是数组中的一个 连续 部分。
 *
 * 注意：长度为 1 的子数组始终视作优雅子数组。
 *https://leetcode.cn/problems/longest-nice-subarray/
 * 思路：滑动窗口
 *
 */
class LongestNiceSubarrayHuaDon {
    public int longestNiceSubarray(int[] nums) {
        int start=0;
        int len=nums.length;
        int ans=1;
        for(int i=1;i<len;i++) {
            for(int j=start;j<i;j++) {
                if((nums[i]&nums[j])!=0) {
                    start++;
                }
            }
            ans=Math.max(ans,i-start+1);
        }
        return ans;

    }
}